package API;

/**
 * @author 王敬仟
 */
public class day01 {
    public static void main(String[] args) {
        /*使用new的方式声明字符串变量,使用equals和==判断字符串是否相等*/
        String s=new String("java");//new String 为灰色是无效的,代表这样声明字符串无意义
        String s1="java";
        System.out.println(s.equals(s1));//true判断的是内容是否相等
        System.out.println(s==s1);//false判断的是地址是否相等


        /*使用length()的方式来获取字符串的长度*/
        String s2="我想去哈尔滨线上学习java";
        System.out.println(s2.length());//14


        /*根据下标找字符,使用IndexOf,找某个字符最后一次出现的位置使用lastIndexOf*/
                 //01234567891111111111
        //                   0123456789
        String s3="qwertt.qwertt.qweasd";
        int index=s3.indexOf("qwe");
        System.out.println(index);//0是从第一个字母下标开始找所以是0
        index=s3.indexOf("qwe",5);//从下标9开始往后找有qwe这三个字母连起来的字符串
        System.out.println(index);//7
        index=s3.lastIndexOf("qwe");//找qwe最后一次出现的位置
        System.out.println(index);//14
        index=s3.indexOf("sd");//找到sd所在数组中的下标
        System.out.println(index);//18


        /*截取字符串 substring*/
        String d="www.WangJingQian.cn.com";
        String num=d.substring(4,16);//截取字符串中某一部分
        System.out.println(num);//WangJingQian
        String num1=d.substring(3);//从下标3的位置
        System.out.println(num1);//.WangJingQian.cn.com


        /*trim()方法是去除两边空白字符*/
        String f="     index     ";
        System.out.println(f);//     index     //没有去除空白字符的
        f=f.trim();
        System.out.println(f);//index去除两边空白字符后的输出结果


        /*根据下标找字符,使用charAt*/
        String g="猫和老鼠的第六季和第七集最棒";
        char i=g.charAt(10);
        System.out.println(i);//七  下标10的位置对应的字是七


        /*判断startsWith判断以什么什么开头,判断endsWith判断以什么什么结尾*/
        String h="String.two";
        boolean start=h.startsWith("Str");//判断是否以Str开始
        System.out.println(start);//true
        boolean ent=h.endsWith("two");//判断是否以two结尾
        System.out.println(ent);//true


        /*toUpperCase()把字母全部转为大写,toLowerCase()把字母全部改为小写*/
        String j="String.two";
        String upper=j.toUpperCase();//把字符串全部改为大写
        System.out.println(upper);//STRING.TWO
        String lower=j.toLowerCase();//把全部字母改为小写
        System.out.println(lower);//string.two

        /*valueOf 任意类型转换成字符串*/
        int a=123;
        String r=String.valueOf(a);//将整数a转化成字符串类型
        System.out.println(r);//123 是字符串型的

        /*StringBuilder的练习*/
        String t="去哈尔滨线上学习java";
        //使用StringBuilder类型来进行 增 删 改 插 操作
        StringBuilder builder=new StringBuilder(t);
        //append进行增操作 末尾增
        builder.append(",是为了更好的学习");
        System.out.println(builder);//去哈尔滨线上学习java,是为了更好的学习
        //replace 进行修改操作   8,12 是指在下标8-12之间进行改动
        builder.replace(8,12,"JAVA课程");
        System.out.println(builder);//去哈尔滨线上学习JAVA课程,是为了更好的学习
        //delete删除 指定下标内的元素
        builder.delete(8,14);
        System.out.println(builder);//去哈尔滨线上学习,是为了更好的学习
        //insert 指定数组下标插入字符
        builder.insert(8,"java");
        System.out.println(builder);//去哈尔滨线上学习java,是为了更好的学习
    }
}
